Within any particular task or work schedule there is a process flow defining a number of steps that need to be implemented in a specific order to achieve the completed task. This sequence of steps may be considered a workflow and can be considered at its simplest the allocation and movement of individual tasks through the process in order to achieve the desired completed task. While some workflows may be completed by an individual, many others require the interaction between two or more persons—each being allocated a specific task for completion.
Within any specific workflow there is often a predefined order in which the individual tasks must be completed. Often it is not possible to initiate a task until the previous task has been successfully completed. In other workflows there is a possibility for multiple tasks to be conducted in parallel but each needs to be marked as completed before the overall workflow may be considered completed. Where two or more tasks within a workflow are allocated to different individuals there is a requirement for these individuals to coordinate with one another in order to achieve the necessary completion of the task. This can be achieved through a simple conversation between the two or through the use of computer implemented technologies which are configured to receive inputs from each of the individuals to coordinate the completion of each of the tasks.
Using such computer implemented technologies it is possible to automate much of a workflow. There is however still a difficulty where certain tasks require remote users to interact with one another. There is a further need to be able to audit these tasks. There is yet a further need to be able to ensure that the tasks completed are completed satisfactorily.
Therefore despite the advances in the field, there is still need of more efficient systems and methods for providing distributed workflows.